package com.glela.goods.service;

import org.joda.time.DateTime;

import com.glela.goods.model.request.RequestLimitSaleGoodsListModel;
import com.glela.goods.model.response.RespLimitSaleTomorrow;
import com.glela.goods.model.response.ResponseLimitSaleGoods;
import com.glela.goods.model.response.ResponseLimitSaleTitle;
import com.glela.platform.model.response.ResponseUser;

/**
 * 分时抢购
 * @author zls
 *
 */
public interface LimitTimeSaleService {
	/**
	 * <dl>
	 * <dt>分时抢购标题</dt>
	 * <dd>分三块计算：1.昨日精选；2.今日热卖；3.明日预告</dd>
	 * </dl>
	 * @return ResponseLimitSaleTitle
	 * @author zls
	 * @param nowDate 当前时间日期
	 * @date 2017年7月13日 上午11:10:36
	 */
	ResponseLimitSaleTitle findLimitSaleTitle(DateTime nowDate);

	/**
	 * <dl>
	 * <dt>某时间段下商品列表，分页</dt>
	 * </dl>
	 * @param requestLimitSaleGoodsListModel
	 * @param loginUser 登录人
	 * @return ResponseLimitSaleGoods
	 * @author zls
	 * @param nowDate 当前时间点
	 * @date 2017年7月13日 上午11:10:48
	 */
	ResponseLimitSaleGoods findLimitSaleGoodsList(RequestLimitSaleGoodsListModel requestLimitSaleGoodsListModel, ResponseUser loginUser, DateTime nowDate);

	/**
	 * <dl>
	 * <dt>获取明日预告商品总数</dt>
	 * </dl>
	 * @return long 总数
	 * @author zls
	 * @date 2017年7月14日 下午3:26:09
	 */
	long findTomorrowTrailerGoodsNums();

	/**
	 * <dl>
	 * <dt>明日预告专题分页</dt>
	 * </dl>
	 * @param requestLimitSaleGoodsListModel
	 * @return RespLimitSaleTomorrow
	 * @author zls
	 * @date 2017年7月18日 下午8:25:12
	 */
	RespLimitSaleTomorrow getTomorrowTrailer(RequestLimitSaleGoodsListModel requestLimitSaleGoodsListModel);
}